<?php

namespace app\admin\validate\crm;

use think\Validate;

/**
 * CRM字段分组验证器
 */
class CrmFieldGroupValidate extends Validate
{
    /**
     * 验证规则
     * @var array
     */
    protected $rule = [
        'name' => 'require|max:60',
        'code' => 'require|max:30|alphaDash',
        'sort' => 'integer',
        'icon' => 'max:100',
        'color' => 'max:20',
    ];

    /**
     * 错误提示
     * @var array
     */
    protected $message = [
        'name.require' => '分组名称不能为空',
        'name.max' => '分组名称不能超过60个字符',
        'code.require' => '分组编码不能为空',
        'code.max' => '分组编码不能超过30个字符',
        'code.alphaDash' => '分组编码只能包含字母、数字和下划线',
        'sort.integer' => '排序值必须是整数',
        'icon.max' => '图标地址不能超过100个字符',
        'color.max' => '颜色值不能超过20个字符',
    ];

    /**
     * 验证场景
     * @var array
     */
    protected $scene = [
        'save' => ['name', 'code', 'sort', 'icon', 'color'],
        'update' => ['name', 'code', 'sort', 'icon', 'color'],
    ];
}